export interface TenantVO extends BaseEntity {
  id: number | string;
  tenantId: number | string;
  username: string;
  contactUserName: string;
  contactPhone: string;
  companyName: string;
  licenseNumber: string;
  address: string;
  domain: string;
  intro: string;
  remark: string;
  packageId: string | number;
  expireTime: string;
  accountCount: number;
  status: string;
  region?: string;
  building?: string;
  floor?: string;
  roomNumber?: string;
  daysUntilExpiry?: number;
  expiryStatus?: string;
  // 新增租赁相关字段
  logoUrl?: string;
  licenseImageUrl?: string;
  leaseArea?: number;
  leaseStartTime?: string;
  leaseEndTime?: string;
  buildingId?: number | string;
  floorId?: number | string;
  roomId?: number | string;
}

export interface TenantQuery extends PageQuery {
  tenantId: string | number;
  contactUserName: string;
  contactPhone: string;
  companyName: string;
  region?: string;
  building?: string;
  expiryDays?: number;
  expiryRange?: string;
}

export interface SelectedItem {
  region: string;
  building: string;
  floor: string;
  room: string;
  area: number;
  remark: string;
}

export interface TenantForm {
  id: number | string | undefined;
  tenantId: number | string | undefined;
  username: string;
  password: string;
  contactUserName: string;
  contactPhone: string;
  companyName: string;
  licenseNumber: string;
  domain: string;
  address: string;
  intro: string;
  remark: string;
  packageId: string | number;
  expireTime: string;
  accountCount: number;
  status: string;
  region?: string;
  building?: string;
  floor?: string;
  roomNumber?: string;
  // 新增租赁相关字段
  logoUrl?: string;
  licenseImageUrl?: string;
  leaseArea?: number;
  leaseStartTime?: string;
  leaseEndTime?: string;
  buildingId?: number | string;
  floorId?: number | string;
  roomId?: number | string;
  buildingIds?: Array<string | number>;
  floorIds?: Array<string | number>;
  roomIds?: Array<string | number>;
  selectedItems?: Array<SelectedItem>;
}
